package com.vshining.cryptoki.jna.pkcs11t;

import com.sun.jna.NativeLong;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;

import java.util.Arrays;
import java.util.List;

/**
 * @author Shining Wang <shiningwang@vshining.com>
 */
@SuppressWarnings("unused")
public class CK_X9_42_DH2_DERIVE_PARAMS extends Structure {
    NativeLong kdf;
    NativeLong ulOtherInfoLen;
    Pointer pOtherInfo;
    NativeLong ulPublicDataLen;
    Pointer pPublicData;
    NativeLong ulPrivateDataLen;
    NativeLong hPrivateData;
    NativeLong ulPublicDataLen2;
    Pointer pPublicData2;

    @Override
    protected List getFieldOrder() {
        return Arrays.asList(
                "kdf",
                "ulOtherInfoLen",
                "pOtherInfo",
                "ulPublicDataLen",
                "pPublicData",
                "ulPrivateDataLen",
                "hPrivateData",
                "ulPublicDataLen2",
                "pPublicData2"
        );
    }
}
